package pe.edu.upc.dew.util;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.List;

import pe.edu.upc.dew.model.AcreditacionInfo;
import pe.edu.upc.dew.model.AutentificacionInfo;
import pe.edu.upc.dew.model.SancionInfo;

public class Util {
	private static SimpleDateFormat formato = new SimpleDateFormat("dd/MM/yyyy");

	public static List convertirLista(String cadena) {
		String[] arraySanciones = cadena.split("%");
		List listado = new ArrayList<SancionInfo>();
		for (int i = 0; i < arraySanciones.length; i++) {
			String[] arrayCamposSancion = arraySanciones[i].split("#");

			SancionInfo sancion = new SancionInfo();
			sancion.setDni(arrayCamposSancion[0]);
			sancion.setPapeleta(arrayCamposSancion[1]);
			sancion.setLicencia(arrayCamposSancion[2]);
			sancion.setFalta(arrayCamposSancion[3]);
			sancion.setPlaca(arrayCamposSancion[4]);
			sancion.setTipoFalta(arrayCamposSancion[5]);
			try {
				sancion.setFechaInfraccion(formato.parse(arrayCamposSancion[6]));
			} catch (ParseException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
			listado.add(sancion);

		}
		return listado;
	}
	
	public static AcreditacionInfo convertirBeanAcreditacion(String cadena) {
		String[] arrayCampos = cadena.split("#");
		
		AcreditacionInfo acreditacionInfo = new AcreditacionInfo();
		acreditacionInfo.setDni(arrayCampos[0]);
		acreditacionInfo.setTipoAsegurado(arrayCampos[1]);
		acreditacionInfo.setAutogenerado(arrayCampos[2]);
		acreditacionInfo.setTipoSeguro(arrayCampos[3]);
		acreditacionInfo.setCentroAsistencial(arrayCampos[4]);
		acreditacionInfo.setDireccionCentro(arrayCampos[5]);
		try {
			acreditacionInfo.setFechaVigenciaHasta(formato.parse(arrayCampos[6]));
		} catch (ParseException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}			
		return acreditacionInfo;
	}
	
	public static AutentificacionInfo convertirBeanAutentificacion(String cadena) {
		String[] arrayCampos = cadena.split(",");
		
		AutentificacionInfo autentificacionInfo = new AutentificacionInfo();
		autentificacionInfo.setDni(arrayCampos[0]);
		autentificacionInfo.setNombre(arrayCampos[1]);
		autentificacionInfo.setApePaterno(arrayCampos[2]);
		autentificacionInfo.setApeMaterno(arrayCampos[3]);
		autentificacionInfo.setSexo(arrayCampos[4]);
		autentificacionInfo.setDireccion(arrayCampos[5]);
		try {
			autentificacionInfo.setFechaNacimiento(formato.parse(arrayCampos[6]));
		} catch (ParseException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}			
		return autentificacionInfo;
	}
}
